package com.work.chat.custom.server.config;


import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.springframework.stereotype.Component;

import java.net.URL;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;


@Component
public class MybatisBeanFactory {

    /**
     * 推荐使用bean工厂创建对象，使得代码更易测试，方便mock
     * @return
     */
    public Page getPage(){
        return new Page(1, 10);
    }

    /**
     * 推荐使用bean工厂创建对象，使得代码更易测试，方便mock
     * @return
     */
    public Page getPage(Integer pageNum,Integer pageSize){
        return new Page(pageNum,pageSize);
    }

    /**
     * 推荐使用bean工厂创建对象，使得代码更易测试，方便mock
     * @return
     */
    public LambdaQueryWrapper getLambdaQueryWrapper(){
        return new LambdaQueryWrapper<>();
    }

    /**
     * 推荐使用bean工厂创建对象，使得代码更易测试，方便mock
     *
     * @return
     */
    public QueryWrapper getQueryWrapper() {
        return new QueryWrapper<>();
    }



    public Map<String, Object> getHashMap(){
        return new HashMap<>(16);
    }

    public LambdaUpdateWrapper getLambdaUpdateWrapper(){
        return new LambdaUpdateWrapper<>();
    }

}
